package com.finally语句;

public class FinallyTest31 {
	
    public static void main(String[] args) {
    	Student map = getMap();
    	System.out.println(map);
        System.out.println(map.getId());
    }

    public static Student getMap() {
    	Student map = new Student();
    	System.out.println(map);
        map.setId(1);
        try {
        	map.setId(2);
            return map;
        }
        catch (Exception e) {
        	map.setId(3);
            return map;
        }
        finally {
        	map.setId(4);
            // Java中只有传值没有传址，这也是为什么map = null这句不起作用
        	// map里保存的是一个指向new Student()的内存地址的值
        	// return的时候已经把要返回的值确定下来了，然后才去执行的finally方法
            map = null;
        }

    }
    
}